<!--
 * @Description:  
 * @Author: xiongkuobiao
 * @Date: 2023-02-23 10:43:41
 * @LastEditors: xiongkuobiao
 * @LastEditTime: 2023-02-24 10:36:11
-->
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body></body>
  <script>
    // let source = [
    //   { id: 1, pid: 0, name: "body" },
    //   { id: 2, pid: 1, name: "title" },
    //   { id: 3, pid: 2, name: "div" },
    // ];

    // function zhuanhuan1(source, pid) {
    //   return source
    //     .filter((item) => {
    //       if (item.pid == pid) {
    //         return item;
    //       }
    //     })
    //     .map((item) => {
    //       return { ...item, children: zhuanhuan1(source, item.id) };
    //     });
    // }
    // console.log(zhuanhuan1(source, 0));

    // 怎么让树转换扁平化
    // let source1 = [
    //   {
    //     id: 1,
    //     pid: 0,
    //     name: "body",
    //     children: [
    //       {
    //         id: 2,
    //         pid: 1,
    //         name: "title",
    //         children: [{ id: 3, pid: 2, name: "div" }],
    //       },
    //     ],
    //   },
    // ];
    // function jiexi(source, arr = []) {
    //   for (let key in source) {
    //     if (source[key].children && source[key].children.length > 0) {
    //       arr.push(source[key]);
    //       jiexi(source[key].children, arr);
    //     } else {
    //       delete source[key]["children"];
    //       arr.push(source[key]);
    //     }
    //   }
    //   return arr;
    // }
    // console.log(jiexi(source1));
    // source1
  </script>
</html>
